<?php
/**
 * Created by PhpStorm.
 * User: holy
 * Date: 2017/11/9
 * Time: 上午10:56
 */

namespace Admin\Model;

use Think\Model\RelationModel;

class ProductModel extends RelationModel
{
    //商品都有一个分类
    protected $_link = array(
        'category'=> self::BELONGS_TO,
    );
    //自动验证
    protected $_validate = array(
        array('name', 'require', '商品名称必须！'), //默认情况下用正则进行验证
        array('price', 'require', '商品单价必须！'), //默认情况下用正则进行验证
        array('stock', 'require', '商品库存必须！'), //默认情况下用正则进行验证
        array('thumb', 'require', '商品缩略图必须！'), //默认情况下用正则进行验证
        array('description', 'require', '商品描述必须！'), //默认情况下用正则进行验证
    );

    //创建时间自动完成
    protected $_auto = array (
        array('create_at','set_time',3,'callback'), // 对name字段在新增和编辑的时候回调getName方法
    );


    //将标准时间转换成Unix时间戳
    function set_time($time)
    {
        return strtotime($time);
    }


    /***
     * 查出所有商品
     * @return mixed
     */
    public function all_products()
    {
        $Category = M('Category');
        $products = $this->where("status = 1")->order('sort_order desc')->select();
        foreach ($products as $key => $value) {
            $category_id = $value['category_id'];
            $category = $Category->find($category_id);
            $products[$key]['category'] = $category;
        }

        return $products;
    }
}